package com.example.demo.service;

import com.example.demo.controller.bean.Result;
import com.example.demo.dto.CouponsRequestDTO;
import com.example.demo.mapper.entity.*;
import com.example.demo.utils.PageBo;
import com.example.demo.utils.PageVo;

import java.util.List;

public interface CouponsManageService {
    PageVo<CouponsView> getVoucherList(PageBo pageBo);

    PageVo<CouponsView> getFullDiscountCouponList(PageBo pageBo);

    PageVo<CouponsView> getDiscountCouponList(PageBo pageBo);

    PageVo<CouponsView> getExchangeCouponList(PageBo pageBo);

    PageVo<CouponsView> searchCouponList(CouponsView request, PageBo pageBo);

    Result<String> addCoupons(CouponsRequestDTO coupons, String fileName);

    List<CouponsView> getCompanyList();

    List<CouponsView> getCouponDataList(int couponsId);

    Result<String> Coupons(Coupons coupons);

    void batchDeleteCoupons(List<Coupons> couponsList);

    Result<String> updateState(CouponsView request);

    String getPicById(int couponsId);

    void placeCouponsPic(int couponsId, String fileName);

    PageVo<StudentCoupons> getStudentCouponsList(PageBo pageBo);

    PageVo<StudentCoupons> getRedeemList(PageBo pageBo);
}
